package com.itheima.work;

import java.util.concurrent.CopyOnWriteArrayList;

/**
 * @auther Macrydy
 * @date 2020/7/9 18:46
 *  请使用CopyOnWriterArrayList定义一个线程安全的List，使用两个线程访问它：
 *
 * ​       第一个线程：向集合中添加1--10000的数字；
 *
 * ​       第二个线程：向集合中添加10001--20000的数字；
 *
 * ​       确保两个线程全部操作集合完毕，然后打印集合的每个元素，测试期准确性。
 */
public class Test2 {
    public static void main(String[] args) {
        CopyOnWriteArrayList<Integer> list = new CopyOnWriteArrayList<>();

        try {
            Thread.sleep(1000);
        } catch (InterruptedException e) {
            e.printStackTrace();
        }
        new Thread(new Runnable() {
            @Override
            public void run() {
                for (int i = 1; i <= 100; i++) {
                    list.add(i);
                }
            }
        }).start();
        new Thread(new Runnable() {
            @Override
            public void run() {
                for (int i = 101; i <= 200; i++) {
                    list.add(i);
                }
            }
        }).start();

        for (int i = 0; i < list.size(); i++) {
            System.out.println(list.get(i));
        }
        System.out.println(list.size());
    }
}
